The structure of the ME Alarm XML file is given below. There are three main sections, alarms, triggers, and messages, which correlate to the Advanced, Triggers, and Messages tabs of the Alarm Setup editor.
Elements are in maroon text. Attributes are red. Values are blue.
<?xml version="1.0" encoding="UTF-8" ?>
<alarms id="Alarms" version="1.0" product="{123-456-789}">
<alarm history-size="64" display-name="[ALARM]" hold-time="250" max-update-rate="0.5" silence-tag="" remote-silence-exp="" remote-ack-all-exp="" status-reset-tag="" remote-status-reset-exp="" close-display-tag="" remote-close-display-exp="" use-alarm-identifier="true">
<triggers>
<trigger id="T1" type="value" ack-all-value="25" use-ack-all="true" ack-tag="" exp="if tag2 = 0 then 5 else if Tag2 = 1 then 10 else 15" message-tag="" message-handshake-exp="" message-notification-tag="" remote-ack-exp="" remote-ack-handshake-tag="" label="Label1" handshake-tag="" />
<trigger id="T2" type="bit" ack-all-value="0" use-ack-all="false" ack-tag="" exp="Tag1 = 20" message-tag="Alarm/Message1" message-handshake-exp="Alarm/Handshake1" message-notification-tag="Alarm/Notification1" remote-ack-exp="" remote-ack-handshake-tag="" label="" handshake-tag="HandshakeTag1" />
</triggers>
<messages>
<message id="M1" trigger-value="1" identifier="1" trigger="#T1" backcolor="#c00000" forecolor="#ffffff" audio="true" display="true" print="false" message-to-tag="true" text="Tank Full" />
<message id="M2" trigger-value="2" identifier="0" trigger="#T2" backcolor="#c00000" forecolor="#ffffff" audio="true" display="true" print="false" message-to-tag="true" text="Tank Overflow" />
</messages>
</alarm>
</alarms>